﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;

/// <summary>
/// Summary description for ControladorCrearNuevoGrupoMaterial  
/// </summary>
public class ControladorCrearNuevoGrupodeMaterial
{
    public ControladorCrearNuevoGrupodeMaterial()
	{
		//
		// TODO: Add constructor logic here
		//
	}

    public void cargarGrupodeMateriales(GridView gridGrupodeMateriales)
    {
        ModeloCargarGrupodeMaterial model = new ModeloCargarGrupodeMaterial();
        DataTable dt = model.getGrupodeMateriales();
        if (dt == null)
        {
            model.setMsg("Ocurrió un error al conectarse con la base de datos. Intente más tarde");
            gridGrupodeMateriales.Visible = false;
            return;
        }

        if (dt.Rows.Count == 0)
        {
            model.setMsg("No existen bodegas registradas en el sistema");
            gridGrupodeMateriales.Visible = false;
            return;
        }

        else
        {
            gridGrupodeMateriales.DataSource = dt;
            gridGrupodeMateriales.DataBind();
            model.setMsg("");

        }

    }

    public void insertNuevoGrupodeMaterial(String nombreGrupodeMaterial)
    {
        ModeloCrearNuevoGrupodeMaterial model = new ModeloCrearNuevoGrupodeMaterial();
        model.setnombreGrupodeMaterial(nombreGrupodeMaterial);
        int result = model.validarModelo();
        if (result == 0)
        {
            model.setErrorCode("");
            model.setOpMsg("El campo 'Nombre del Grupo del material' es obligatorio");
            return;
        }
        if (result == -1)
        {
            model.setErrorCode("");
            model.setOpMsg("El campo 'Nombre del Grupo del material' tiene a lo más 40 caracteres");
            return;
        }
        if (result == -2)
        {
            model.setErrorCode("");
            model.setOpMsg("El nombre ingresado para el nuevo Grupo de material ya existe en la base de datos");
            return;
        }
        if (result == -3)
        {
            model.setErrorCode("");
            model.setOpMsg("Ocurrió un error al conectarse con la base de datos. Intente más tarde");
            return;
        }
        if (result == 1)
        {
            bool res = model.insertNuevoGrupodeMaterial();
            if (res)
            {
                model.setErrorCode("1");
                model.setOpMsg("El Grupo de Material '" + nombreGrupodeMaterial + "' fue creada con éxito");
            }
            else 
            {
                model.setErrorCode("");
                model.setOpMsg("Ocurrió un error al conectarse con la base de datos. Intente más tarde");
            }
        }
    
    }

}